// myframe.h

#ifndef MYFRAME_H
#define MYFRAME_H

#include <QFrame>
#include <QHBoxLayout>
#include <QLabel>
#include <QPushButton>
#include <QVBoxLayout>
#include <QNetworkAccessManager>

class MyFrame : public QFrame
{
    Q_OBJECT

public:
    // 构造函数：增加 user_id 和 order_id 参数
    MyFrame(int user_id,
            int order_id,
            QString orderNumber,
            QString departureTime,
            QString arrivalTime,
            QString departureCity,
            QString arrivalCity,
            QString aircraftModel,
            QString ticketType,
            QString ticketPrice,
            QString order_status,
            QWidget *parent = nullptr);

    ~MyFrame(); // 析构函数

signals:
    // 定义一个信号，表示支付或退票完成
    void actionCompleted();

private slots:
    // 按钮的槽函数
    void onCancelButtonClicked(int user_id, int order_id);
    void onChangeButtonClicked(int user_id, int order_id);
    void onPayButtonClicked(int user_id, int order_id);
    void onRefundRequestFinished();

private:
    QLabel *label;             // 订单详情显示标签
    QPushButton *cancelButton; // 退票按钮
    QPushButton *changeButton; // 改签按钮
    QPushButton *payButton;    // 支付按钮
    QVBoxLayout *layout;       // 布局
    int user_id;               // 用户 ID
    int order_id;              // 航班 ID

    QString orderNumber;   // 订单号
    QString departureTime; // 出发时间
    QString arrivalTime;   // 到达时间
    QString departureCity; // 出发城市
    QString arrivalCity;   // 到达城市
    QString aircraftModel; // 飞机型号
    QString ticketType;    // 票型
    QString ticketPrice;   // 票价
    QString order_status;  // 订单状态（已支付/未支付）

     QNetworkAccessManager *manager; // 网络访问管理器
};

#endif // MYFRAME_H

//订单号：orderNumber
// 出发时间：departureTime
// 到达时间：arrivalTime
// 出发城市：departureCity
// 到达城市：arrivalCity
// 飞机型号：aircraftModel
// 票型：ticketType
// 票价：ticketPrice
// 改签按钮：changeButton
// 退签按钮：cancelButton
// 支付按钮: payButton
//票务状态 order_status
